package cc.aiee.wxpay.model.score.create;

import java.util.List;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import cc.aiee.core.interfaces.PayJsonBeanInterface;
import cc.aiee.core.kit.KitJson;
import cc.aiee.wxpay.model.score.complete.WxPayPostPayment;
import lombok.Data;

@Data
public class WxPayCreateServiceOrderModel implements PayJsonBeanInterface {

	@NotBlank
	private String out_order_no;
	@NotBlank
	private String appid;

	private String service_id;
	/**
	 * 服务信息 <br>
	 * 服务信息，用于介绍本订单所提供的服务 ，当参数长度超过20个字符时，报错处理。<br>
	 * 示例值：某某酒店
	 */
	@NotBlank
	private String service_introduction;

	private List<WxPayPostPayment> post_payments;

	@NotNull
	private WxPayTimeRange time_range;

	/**
	 * 微信审核需要,现在需要必填
	 */
	private WxPayLocation location;

	@NotNull
	private WxPayRiskFund risk_fund;

	private String notify_url;

	private Boolean need_user_confirm = true;

	@Override
	public String toJson() {
		return KitJson.toJSONString(this);
	}

	@Override
	public String toJson(boolean prettyFormat, boolean ignoreNull) {
		return KitJson.toJSONString(this, prettyFormat, ignoreNull);
	}

}
